package com.wa.enums.response;

/**
 * RESTful API响应码
 *
 * @author paul
 * @version 2017-07-13
 */
public enum RestAPICode {
    /***************************BASE ERROR CODE 系统级响应码 start  0-999******************************/
    
	/**
     * 正常响应
     */
    NORMAL("success", 0),
    DATABASE_ERROR("系统异常，请联系管理员！", 101),
    /** access_token相关错误 2xxx */
    /**
     * access_token过期
     */
    EXPIRED_ACCESS_TOKEN("请登录", 102),
    /** 请求参数相关错误 */
    /**
     * HTTP请求头参数错误
     */
    REQUEST_HEADER_PARAM_ERROR("http request header param error", 103),
    /**
     * JSON请求参数字段错误
     */
    REQUEST_JSON_FIELD_ERROR("http request json param error", 104),
    /**
     * HTTP请求参数字段错误，适用于GET/POST方式传递的字段参数
     */
    REQUEST_PARAM_FIELD_ERROR("http request param error", 105),
    SYS_SIGN_INVALID("签名无效", 106),

    USER_IS_NOT_EXIST("用户不存在！", 110),
    USER_PASSWORD_IS_INCORREC("用户名或密码错误！", 111),
    //添加用户开始
    USER_PASSWORD_IS_NOT_NULL("密码不能为空!", 111),
    USER_PASSWORD_IS_LT_SIX("密码不能小于6位!", 111),
    USER_USERNAME_IS_EXIT("用户名已存在!",113),
    USER_MOBILE_IS_EXIT("手机号已存在!",114),
    USER_USERNAME_IS_NOT_NULL("用户名不能为空！", 112),
    //添加用户结束
    //添加权限开始
    PERMISSION_NAME_IS_NOT_NULL("名称不能为空!", 111),
    //添加权限结束
    //添加编辑菜单开始
    MENU_TITLE_IS_NOT_NULL("菜单标题不能为空!",120),
    MENU_TITLE_IS_EXIT("菜单标题已存在!",122),
    MENU_URL_IS_NOT_NULL("菜单URL不能为空!",121),
    MENU_PARENTId_IS_NOT_NULL("父ID不能为空!",125),
    MENU_SORT_IS_NOT_NULL("排序ID不能为空!",126),
    //添加菜单结束

    //删除菜单开始
    MENU_ID_IS_NOT_NULL("ID不能为空!",123),
    MENU_IS_NOT_EXIT("菜单不存在!",122),
    //删除菜单结束

    //删除用户
    USER_NOT_EXIT("用户不存在！", 115),
    USER_ID_IS_NOT_NULL("用户ID不能为空！", 115),

    ROLE_NAME_NOT_NULL("名称不能为空！", 116),
    ROLE_TITLE_NOT_NULL("职位不能为空！", 117),
    ROLE_NAME_IS_EXIT("角色名称已存在！", 118),

    ROLE_NAME_IS_NOT_EXIT("角色不存在！", 118),
    ROLE_ID_IS_NULL("ID不能为空！", 119);

    private String message;
    private int code;

    private RestAPICode(String message, int code) {
        this.message = message;
        this.code = code;
    }

    public String getMessage() {
        return message;
    }

    public int getCode() {
        return code;
    }

}
